package xworker.netty.handlers.message;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface Handler {
    /**
     * 请求字符串。
     */
    String request() default "";

    /**
     * 过滤器指示字符串。目前还未实现过滤器的功能。
     */
    String filters() default "login";

    /**
     * 请求消息的类名。
     */
    Class<?> requestClass();

    /**
     * 是否使用EventExecutor或ExecutorService执行。如果是耗时任务可以设置为true，避免在Netty的线程里执行。
     */
    boolean executor() default false;
}